<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns:ui="http://java.sun.com/jsf/facelets"
                template="/publico/template/templatePadrao.xhtml"
                xmlns:p="http://primefaces.org/ui"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core">

    <ui:define name="content">
        <p:panel header="Lista de Livros">
            <h:form id="Livro" acceptcharset="ISO-8859-1" >  

                <p:messages showDetail="true" showSummary="true" autoUpdate="true"/>

                <p:panel header="Novo Livro">  
                    <h:panelGrid columns="4" id="grid" cellspacing="4">  

                        <h:outputText value="Tipo: " />  
                        <p:selectOneRadio
                            id="tipo"
                            value="#{livroBean.livro.tipoLivro}">  
                            <f:selectItem itemLabel="Autor" itemValue="30"/>  
                            <f:selectItem itemLabel="Editor" itemValue="10"/>  
                        </p:selectOneRadio>  

                        <h:outputLabel value="Título : *"/> 
                        <p:inputText id="Titulo"   
                                     maxlength="350"
                                     required="false"
                                     value="#{livroBean.livro.titulo}" />  

                        <h:outputLabel value="Autor : *" />  
                        <p:inputText id="Autor" 
                                     maxlength="350"
                                     required="false"   
                                     value="#{livroBean.livro.autor}" />  

                        <h:outputLabel value="Ano Publicação : *" />  
                        <p:inputMask id="anoPublicacao"
                                     mask="9999" 
                                     required="false"  
                                     value="#{livroBean.livro.ano}" />

                        <h:outputLabel value="Capítulo : " />  
                        <p:inputText id="Capitulo" 
                                     maxlength="100"
                                     required="false"   
                                     value="#{livroBean.livro.capitulo}" />

                        <h:outputLabel value="ISBN : " />  
                        <p:inputText id="Isbn" 
                                     maxlength="45"
                                     required="false"   
                                     value="#{livroBean.livro.isbn}" />

                        <p:commandButton value="Limpar" type="reset"/>  
                        <p:commandButton id="btn_add" 
                                         value="Adicionar"
                                         ajax="false"
                                         action="#{livroBean.salvarLivro()}"/>

                    </h:panelGrid>  
                </p:panel>  

                <br/>

                <p:tabView>
                    <p:tab id="livrosTab1" title="Livros Atuais">
                        <p:dataTable id="livrosTabela" 
                                     value="#{livroBean.livrosAtuais}" var="livro"
                                     emptyMessage="Sem registro para a exibição."
                                     paginator="true" rows="5" 
                                     rowsPerPageTemplate="5,10,15">

                            <p:column headerText="Título"
                                      style="max-width: 110px;min-width: 110px; 
                                      overflow: hidden;  max-height: 12px; 
                                      min-height: 12px; white-space: pre-line">
                                <h:outputLabel value="#{livro.titulo}"/> 
                            </p:column>  

                            <p:column headerText="Autor"
                                      style="max-width: 110px;min-width: 110px; 
                                      overflow: hidden;  max-height: 12px; 
                                      min-height: 12px; white-space: pre-line"> 
                                <h:outputLabel value="#{livro.autor}"/> 
                            </p:column>

                            <p:column headerText="Capítulo"
                                      style="max-width: 110px;min-width: 110px; 
                                      overflow: hidden;  max-height: 12px; 
                                      min-height: 12px; white-space: pre-line">
                                <h:outputLabel value="#{livro.capitulo}"/> 
                            </p:column>


                            <p:column headerText="Ano"
                                      style="max-width: 95px;min-width: 95px; 
                                      overflow: hidden;  max-height: 12px; 
                                      min-height: 12px; white-space: pre-line"> 
                                <h:outputLabel value="#{livro.ano}"/>
                            </p:column>

                            <p:column headerText="ISBN"
                                      style="max-width: 110px;min-width: 110px; 
                                      overflow: hidden;  max-height: 12px; 
                                      min-height: 12px; white-space: pre-line">
                                <h:outputLabel value="#{livro.isbn}"/> 
                            </p:column>

                            <p:column headerText="Pontuação"
                                      style="max-width: 95px;min-width: 95px; 
                                      overflow: hidden;  max-height: 12px; 
                                      min-height: 12px; white-space: pre-line">
                                <h:outputLabel value="#{livro.estrato}"/> 
                            </p:column> 

                            <p:column headerText="Operação" style="max-width: 95px;min-width: 95px; 
                                      overflow: hidden;  max-height: 12px; 
                                      min-height: 12px; white-space: pre-line">  
                                <div align="center">
                                    <p:commandButton
                                        ajax="false"
                                        icon="ui-icon-arrowstop-1-n"
                                        action="#{livroBean.upload}">  
                                        <f:setPropertyActionListener 
                                            value="#{livro}" 
                                            target="#{livroBean.livro}"/>
                                    </p:commandButton>

                                    <p:commandButton
                                        title="Excluir"
                                        action="#{livroBean.excluirLivro()}"
                                        icon="ui-icon-trash"
                                        update="livrosTabela">
                                        <f:setPropertyActionListener 
                                            target="#{livroBean.livro}"
                                            value="#{livro}"/>
                                        <p:confirm
                                            icon="ui-icon-alert"
                                            message="Voce tem certeza?"
                                            header="Confimação"/>
                                    </p:commandButton>
                                    
                                    <p:commandButton 
                                        ajax="false"
                                        rendered="#{avaliacaoBean.possuiArquivo(livro.arquivo)}"
                                        icon="ui-icon-document"
                                        actionListener="#{avaliacaoBean.visualizarComprovante(livro.arquivo)}"
                                        onclick="this.form.target = '_blank';"
                                        title="visualizar o comprovante"/>
                                </div>
                            </p:column>

                            <f:facet name="footer">
                                Total em Livros: 
                                <h:outputLabel value="#{livroBean.total}"/>
                            </f:facet>
                        </p:dataTable>
                    </p:tab>

                    <p:tab id="livrosTab2" title="Livros Passados">
                        <p:dataTable id="livrosTabela2" 
                                     value="#{livroBean.livrosPassados}" var="livro"
                                     emptyMessage="Sem registro para a exibição."
                                     paginator="true" rows="5" 
                                     rowsPerPageTemplate="5,10,15">

                            <p:column headerText="Título"
                                      style="max-width: 110px;min-width: 110px; 
                                      overflow: hidden;  max-height: 12px; 
                                      min-height: 12px; white-space: pre-line">
                                <h:outputLabel value="#{livro.titulo}"/> 
                            </p:column>  

                            <p:column headerText="Autor"
                                      style="max-width: 110px;min-width: 110px; 
                                      overflow: hidden;  max-height: 12px; 
                                      min-height: 12px; white-space: pre-line"> 
                                <h:outputLabel value="#{livro.autor}"/> 
                            </p:column>

                            <p:column headerText="Capítulo"
                                      style="max-width: 110px;min-width: 110px; 
                                      overflow: hidden;  max-height: 12px; 
                                      min-height: 12px; white-space: pre-line">
                                <h:outputLabel value="#{livro.capitulo}"/> 
                            </p:column>


                            <p:column headerText="Ano"
                                      style="max-width: 95px;min-width: 95px; 
                                      overflow: hidden;  max-height: 12px; 
                                      min-height: 12px; white-space: pre-line"> 
                                <h:outputLabel value="#{livro.ano}"/>
                            </p:column>

                            <p:column headerText="ISBN"
                                      style="max-width: 110px;min-width: 110px; 
                                      overflow: hidden;  max-height: 12px; 
                                      min-height: 12px; white-space: pre-line">
                                <h:outputLabel value="#{livro.isbn}"/> 
                            </p:column>

                            <p:column headerText="Pontuação"
                                      style="max-width: 95px;min-width: 95px; 
                                      overflow: hidden;  max-height: 12px; 
                                      min-height: 12px; white-space: pre-line">
                                <h:outputLabel value="#{livro.estrato}"/> 
                            </p:column> 

                            <p:column headerText="Operação" style="max-width: 95px;min-width: 95px; 
                                      overflow: hidden;  max-height: 12px; 
                                      min-height: 12px; white-space: pre-line">  
                                <div align="center">
                                    <p:commandButton
                                        ajax="false"
                                        icon="ui-icon-arrowstop-1-n"
                                        action="#{livroBean.upload}">  
                                        <f:setPropertyActionListener 
                                            value="#{livro}" 
                                            target="#{livroBean.livro}"/>
                                    </p:commandButton>

                                    <p:commandButton
                                        title="Excluir"
                                        icon="ui-icon-trash">
                                        <p:confirm
                                            icon="ui-icon-alert"
                                            message="Voce tem certeza?"
                                            header="Confimação"/>
                                        <f:setPropertyActionListener 
                                            value="#{livro}" 
                                            target="#{livroBean.livro}"/>
                                    </p:commandButton>  
                                </div>
                            </p:column>
                        </p:dataTable>
                    </p:tab>
                </p:tabView>

                <p:confirmDialog global="true" showEffect="fade" hideEffect="explode">
                    <p:commandButton value="Sim" type="button" styleClass="ui-confirmdialog-yes" icon="ui-icon-check" />
                    <p:commandButton value="Não" type="button" styleClass="ui-confirmdialog-no" icon="ui-icon-close" />
                </p:confirmDialog>
            </h:form>  
        </p:panel>
    </ui:define>
</ui:composition>
